package cn.wolfcode.luowowo.article.service;

import cn.wolfcode.luowowo.article.domain.DestinationCommend;
import cn.wolfcode.luowowo.article.query.DestinationCommendQuery;
import com.github.pagehelper.PageInfo;

import java.util.List;

public interface IDestinationCommendService {
    /**
     * 查询目的地推荐
     * @param qo 查询条件
     * @return PageInfo
     */
    PageInfo query(DestinationCommendQuery qo);

    /**
     * 保存或修改目的地推荐
     * @param commend DestinationCommend对象
     */
    void saveOrUpdate(DestinationCommend commend);

    /**
     * 删除对应id的目的地推荐
     * @param id 目的地推荐的id
     */
    void delete(Long id);

    /**
     * 更改目的地推荐的状态
     * @param id 目的地推荐的id
     * @param state 状态
     */
    void changeStateValue(Long id, int state);

    /**
     * 查询所有月份的推荐目的地
     * @return
     */
    List<List<DestinationCommend>> queryMonthsCommends();

    /**
     * 查询所有
     * @return
     */
    List<DestinationCommend> list();

    /**
     * 查询出前五个推荐目的地
     *
     * @return
     */
    List<DestinationCommend> selectDestTop5();

}
